Filename | (eval 1140)[/usr/share/perl5/CGI.pm:932] |
Statements | Executed 24 statements in 35µs |
Eval Invoked At | /usr/share/perl5/CGI.pm line 932 |
Sibling evals | 1, 2, 3, 4, 5, 6 |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
15 | 1 | 1 | 105µs | 133µs | unescapeHTML | CGI::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | # spent 133µs (105+28) within CGI::unescapeHTML which was called 15 times, avg 9µs/call:
# 15 times (105µs+28µs) by C4::Output::output_with_http_headers or CGI::header at line 51 of (eval 1139)[CGI.pm:932], avg 9µs/call | ||||
2 | # hack to work around earlier hacks | ||||
3 | 4 | 1µs | push @_,$_[0] if @_==1 && $_[0] eq 'CGI'; | ||
4 | 4 | 13µs | 16 | 23µs | my ($self,$string) = CGI::self_or_default(@_); # spent 23µs making 16 calls to CGI::self_or_default, avg 1µs/call |
5 | 4 | 1µs | return undef unless defined($string); | ||
6 | 4 | 8µs | 16 | 3µs | my $latin = defined $self->{'.charset'} ? $self->{'.charset'} =~ /^(ISO-8859-1|WINDOWS-1252)$/i # spent 3µs making 16 calls to CGI::CORE:match, avg 188ns/call |
7 | : 1; | ||||
8 | # thanks to Randal Schwartz for the correct solution to this one | ||||
9 | 4 | 5µs | 16 | 6µs | $string=~ s[&([^\s&]*?);]{ # spent 6µs making 16 calls to CGI::CORE:subst, avg 350ns/call |
10 | local $_ = $1; | ||||
11 | /^amp$/i ? "&" : | ||||
12 | /^quot$/i ? '"' : | ||||
13 | /^gt$/i ? ">" : | ||||
14 | /^lt$/i ? "<" : | ||||
15 | /^#(\d+)$/ && $latin ? chr($1) : | ||||
16 | /^#x([0-9a-f]+)$/i && $latin ? chr(hex($1)) : | ||||
17 | "&$_;" | ||||
18 | }gex; | ||||
19 | 4 | 6µs | return $string; | ||
20 | } | ||||
21 | |||||
22 | ; |